## F.3. Installation Differences from Intel

Most of the installation procedures for Linux/SPARC systems are identical to those of Intel-based Linux systems. The differences that do exist are just a side effect of different hardware, different booting procedures, and other similar divergences.

### F.3.1. Graphics and X

Graphics cards are different on each system, and Linux/SPARC systems use different X servers. All SBUS-based and several onboard SPARC graphics cards use the Xsun series of servers. They are named:

Server | Purpose
--- | ---
XsunMono | For monochrome graphics cards only
Xsun | For 8-bit color and monochrome displays
Xsun24 | For 24-bit color graphics cards only, including Creator/Creator3d

Unlike Xfree86 on Intel, these X servers do not use a server configuration file for several reasons. First, the mouse and keyboard types are known on SPARC systems. Second, the graphics card and resolution can be completely autodetected and configured, so no specification of these parameters is needed in a configuration file.

The PCI systems start to bring in some exception cases for graphics cards. Several of the desktop systems (such as Ultra 5 and Ultra 10) have an ATI Mach-64 derived graphics card on the motherboard. Also ATI Mach64 PCI expansion boards are available as well. These graphics cards do use the Xfree86 servers and thus have a configuration file to set up.

For these ATI cards, you set up the XF86Config file just as you would for ATI cards on an Intel system. There are a few sticking points to be aware of:

- Several PCI UltraSPARC systems provide the option of using either a traditional Sun-type [45] keyboard and mouse or a PC-style keyboard with a PS/2 mouse. If you're using the Sun keyboard, the keyboard configuration should look something like this:

  >     XkbKeycodes     "sun(type5)"
  >     XkbTypes        "default"
  >     XkbCompat       "default"
  >     XkbSymbols      "sun/us(sun5)"
  >     XkbGeometry     "sun"
  >     XkbRules        "xfree86"
  >     XkbModel        "sun"
  >     XkbLayout       "sun/us"

  whereas for the PC-style keyboard you want something like this:

  >     XkbRules    "xfree86"
  >     XkbModel    "pc101"
  >     XkbLayout   "us"

  The X configuration tools, such as xf86config and XConfigurator, should be able to get the options right all by themselves. But if they don't, this description helps you.

- Monitor timing configuration can be a pain with Sun monitors. They are really Sony monitors with Sun's brand name on the case. There is no definitive tabulation of what Sony model is "underneath the hood" of the various Sun monitors. All is not lost--use the following rules of thumb and you will get a working X configuration when using tools like `XConfigurator` or `xf86config`.

  Simply take your monitor size (17-inch, 19-inch, and so on) and choose the most common Sony monitor of the same size.

  If you attach a standard off-the-shelf SVGA monitor to your PCI graphics card, you can simply select it from the X configuration tool monitor listing.

  Multihead X configurations are supported currently, but with some limitations. Mach64 ATI cards cannot be multiheaded. The rest of the ATI cards can be multiheaded within the same card type. (That is to say, two cards that both work with the Xsun server can be multiheaded, whereas an Xsun24 and an XsunMono cannot.) The restrictions in this paragraph will disappear in a future release of the X server.

### F.3.2. The SILO Boot Loader

SPARC stations also differ from Intel-based systems in the boot loader. SPARC systems use a bootloader named SILO (for SPARC Improved LOader).

From the user's perspective, SILO behaves just like Intel's LILO. The main noticeable difference is that you don't need to run a special `/sbin/silo` program each time a new kernel image is added to the config file (which is /etc/silo.conf ) as you need to do with Intel. Also, SILO is capable of loading any kernel image found on your ext2, UFS, or ISO9660 filesystems by name.

The reason SILO is able to do this is OBP (Open Boot Prom, the firmware used on SPARC systems). It provides a way for the bootloader code to read blocks off of boot devices, such as disks. With the kernel filename and device name you tell it to use, SILO simply reads your ext2 partition and loads it. (Note: in another light this creates a slight limitation. See the section that follows on bootable devices and consoles.)

It is possible to use SILO to dual boot both Linux and some other SPARC OS. Some helpful hints on how to do this can be found at http://www.sun.com/software/linux/dual_boot.html.

### F.3.3. Partitioning Disks

We now tackle the peculiarities of disk partitioning on Linux/SPARC systems. You can treat this process just like you would on an Intel system with the following exceptions:

- Disk slice c is special: it must exist, and it must encompass the entire disk. Most disk partitioning programs, such as fdisk and Disk Druid, automatically take care of this for you on SPARC systems.

  The reason for disk slice c being this way is that OBP uses this slice to determine the span of blocks on your disk and the location of the boot block for loading SILO from disk.

- If you are creating a partition for something other than an ext2 or UFS filesystem, the partition must not start on the first block. The reason is that other uses, such as swap partitions and RAID slices, will end up overwriting the disk label and making your disk unusable.

  This is an issue only for Linux/SPARC on 2.0.x-based kernels. Sun has added facilities such that new RAID and swap partitions created under 2.2.x kernel-based distributions will take care of this issue transparently for you.

  The easiest way to deal with skipping the first block on 2.0.x-based distributions is to just start the partition at cylinder 1 instead of 0.

Copyright © 2001 O'Reilly & Associates. All rights reserved.